import Vue from 'vue'

/**
 * 对象数据精简，从对象中抽取相应的属性并返回新对象
 * @param {Object} _this 要取数据的对象
 * @param {Array} nameList 对象的属性名列表
 */
uni.$cutObj = (_this, nameList) => {
  let newObj = {}
  nameList.forEach(param => {
    newObj[param] = _this[param]
  })
  return newObj
}

/**
 * 标题大于长度后切割
 * @param {String} title 标题
 * @param {Number} length 限制的最大长度
 */
Vue.prototype.fixTitle = (title, length) => {
  if (title && title.length > length)
    title = title.slice(0, length - 1) + '...'
  return title
}

// 日期时间处理类
Vue.prototype.time = {
  /**
   * 保留两位整数，不足 前补零
   */
  _keepTwo(val) {
    return val < 10 ? '0' + val : val
  },
  /**
   * 显示 年-月-日
   * @param {Date} date 日期
   */
  formatDate(date) {
    let year = date.getFullYear()
    let month = this._keepTwo(date.getMonth() + 1)
    let day = this._keepTwo(date.getDate())
    return `${year}-${month}-${day}`
  }
}
